package com.yida.dao;


import com.yida.bean.*;
import org.apache.ibatis.annotations.Param;

import java.sql.Date;
import java.util.List;


@org.apache.ibatis.annotations.Mapper
public interface Mapper {

	//查询后六页所有博客
	 List<blog> selectBlogall(@Param("pagehead") Integer pagehead, @Param("pagetail") Integer pagetail);
	//查询所有博客数量
	 List<Integer> selectBlogsSum();
	//查询博主
	 blogger selectBloggerindex();
	//查询阅读量前五的博客
	 List<blog> selectBlogre();
	//查询详情博客
	 blog selectBlog(Integer id);
	//查询最新博客
	
	
	//查询文章分类以及数量
	   List<blogtype> selectblogtype();
	//查询所有博客时间
	   List<Date> selectdateall();  
	//查询网站记录的日志
	   List<log> selectlog(@Param("pagehead") Integer pagehead, @Param("pagetail") Integer pagetail);
	//按分类查找博客
	   List<blog>  selectBlogtotype(@Param("pagehead") Integer pagehead,@Param("pagetail") Integer pagetail,@Param("id") Integer id);
	//查询类型下的博客数量
	   List<Integer>   selecttypeBlogsSum(Integer id);
	//查询所有标签
	   List<tag> selecttag();
	//查询标签包含的博客
	   List<blog>  selecttagBlog(@Param("pagehead") Integer pagehead,@Param("pagetail") Integer pagetail,@Param("id") Integer id);
	//查询标签包含的博客数量
	   List<Integer>  selecttagBlogsum(Integer id);
	//按标题查询
	   List<blog>  search(String keyword);
	//增加阅读次数
	   Integer   updateblogsum(Integer id);
	//查询博客下面的评论
	   List<comment>   selectcomment(Integer blogid);
	 //查询留言的评论   
	   List<comment>  selectleavecomment();
	 //增加留言评论  
	   Integer insertleavecomment(comment comment);
	//增加评论
	   Integer    insertcomment(comment comment);
    //根据replay查用户信息
	  blogUser replyIdByBlogUser(Integer replay);
	//查询相册
	   List<phototype>  selectphototype();
	//查询相册下的照片
	   List<photo> phototype(Integer id);
	// 查询id所属类型
	   phototype selectphototypebyid(Integer id);
	   
	   
	 //验证后台登录是否成功
	   blogger selectBlogger(@Param("username") String username,@Param("password") String password);
	
	 //分类查询
	   List<blogtype> selectBlogtypes(@Param("pagehead") Integer pagehead,@Param("pagetail") Integer pagetail);
	 //查询分类数量
	   List<Integer> selectTypeSum();
	 //删除分类
	   Integer deletetype(Integer id);
	  //更改数据
	   Integer updatetype(blogtype type);
	 //插入数据
	   Integer  inserttype(blogtype type);

	   
	 //根据id查寻博客
	   blog getBlog(Integer id);
	 //分页查询
	   List<blog> listblog(Integer page,blog blog);
	 //新增
	   Integer  insertblog(@Param("blog") blog blog,@Param("type") Integer type);
     //插入标签
	   Integer   inserttag(@Param("blogid") Integer blogid,@Param("tagid") Integer tagid);
	 //修改
	   Integer updateblog(@Param("blog") blog blog,@Param("type") Integer type); 
	 //删除博客
	   Integer delectblog(Integer id);
	 //删除博客标签
	   Integer  delectblogtag(Integer blogid);
	  
	   
	 //后端查询博客
	    List<blog>   selectBlogadmin(@Param("pagehead") Integer pagehead,@Param("pagetail") Integer pagetail,@Param("blog") blog blog,@Param("type") Integer type);
	 //后端查询博客
	    List<Integer>   selectBlogsumadmin(@Param("blog") blog blog,@Param("type") Integer type);   
    
	    
	    
	  //删除相册
	      Integer  phototypedelete(Integer id);
	  //插入相册
	      Integer insertphototype (phototype phototype);
	  //插入图片
	      Integer insertphoto (photo photo);
	  //更改相册
	      Integer phototypeupdate(phototype phototype);
	  
	      
	   //删除图片
	      Integer   photodelete(Integer id);
	   
	  //查评论
	   String  selectcontent(Integer replayid);

	   //判断友人
	  blogroll judgeemail(String email);
	   
	   
	   
}